查看原文
其他

PyHubWeekly | 第三期:有了这款Python小工具,再也不用担心复杂Linux命令

Jackpop 平凡而诗意 2022-08-19

点击蓝字关注我

这是一款谷歌开发的命令行工具,这是一款替代curl的绝佳http工具,这是一款让Linux命令不再成为瓶颈的工具,下面就开始介绍本期的5款GitHub优质Python项目/小工具。

—▼—

本期内容

PyHubWeekly每周定期更新,精选GitHub上优质的Python项目/小工具,本期为大家推荐GitHub上5个优质的Python项目,它们分别是:

1. explainshell

2. httpie

3. glances

4. python-fire

5. aiLearnNotes

下面分别来介绍一下上述5个GitHub项目。

1. explainshell

Star:7.5k

链接:https://github.com/idank/explainshell

作为IT/互联网相关的工作人员,哪怕不是开发者,也有可能会和Linux打交道,我们可以用Linux进行开发、运维等,因此,Linux就成为了一项非常重要的个人技能。

使用Linux过程中主要打交道的对象就是繁多的Linux命令和选项(options)就成了令人头疼的事情,举一个最为简单的例子,

> ls -al

这个Linux命令包含两个部分,commandoptions,ls是查看命令,-a-l分别代表:显示所有文件(包括以.开头的隐藏文件)、以列表形式显示。
这些常用的我们都知道,但是有很多使用频率较少的怎么办?我们可以借助explainshell。
它是一款利用Python开发的Linux命令行工具,通过解析帮助文档,逐个匹配一行Linux命令中不同字符的含义,让你对Linux命令能够一目了然,是一款非常棒的Linux学习工具。

2. httpie

Star:45.5k

链接:https://github.com/jakubroztocil/httpie

不同组件之间相互访问可以通过很多方式,其中restful是比较常用的一种。这里就涉及http请求,我们需要测试数据能够正确的上传和下载。在处理http请求过程中使用较多的工具就是curl。

curl有很多明显的弊端:对用户不够友好,命令冗长;可视化效果差,没有高亮。httpie就是curl的一个非常好的替代者,它的使用更加简洁明了,而且能够高亮显示请求结果。

3. glances

Star:14.9k

链接:https://github.com/nicolargo/glances

glances就如同它的汉语意思那样,“一眼”、“一瞥”,能够通过一个简单的命令对系统信息一目了然,了如指掌。

glances利用Python编写的一个跨平台的监视工具,旨在通过curses或基于Web的界面提供大量监视信息。

你不仅可以通过终端命令行使用该工具,还可以web界面、API接口等对服务器进行远程监控,可以将统计信息导出到文件或数据库。

4. python-fire

Star:16.1k

链接:https://github.com/google/python-fire

python-fire是一个款python命令行接口(CLI),仅仅凭它的来历就值得关注一下,它是由谷歌开源的一款python工具包。
我们在开发项目时往往会需要从命令行传入参数,以往常用的有sys、argparse等,既然有一些成熟的命令行工具,为什么还要推荐python-fire呢?
因为它有如下优势:

  • 实现接口更加简洁

  • 创建CLI接口更加简单

  • 能够将现有代码转化为接口

  • 它使得bash和python之间的转换更加容易
    示例,

import fire

class Calculator(object):
  """A simple calculator class."""

  def double(self, number):
    return 2 * number

if __name__ == '__main__':
  fire.Fire(Calculator)

接下来,我们可以在命令行下调用对应的接口,也可以通过参数名称直接传参,

> python calculator.py double 10  # 20
> python calculator.py double --number=15  # 30

5. aiLearnNotes

Star:96

链接:https://github.com/Jackpopc/aiLearnNotes

这是我自己在GitHub托管的项目,和上述优质的GitHub项目一起介绍有一些格格不入,也有一些自卖自夸,但是,我还是希望借此机会推荐一下这个项目。

这个项目围绕AI领域的一些方向展开,目前包含计算机视觉系列,后续会加入机器学习、强化学习、优化算法等系列内容。

该项目的核心关注点是“动手学习”,也就是说不仅仅局限于理论知识,也会去利用Python动手实现相应的算法,在实现的过程中会对算法的思想具有更加深入的理解。

以耗时近一年、已经完结的计算机时间为例,里面会有文档逐步介绍算法的思想,然后在利用Python逐步实现,再次进行巩固。此外,项目中不再千篇一律的局限于深度学习,而是从数字图像处理开始介绍,关注到像素级的知识,然后在此基础上介绍传统的图像处理、目标识别算法,然后循序渐进的引入深度学习知识,这样对计算机时间会有更深、更广泛的认识。

END


有趣的灵魂在等你

长按扫码可关注 

往期精彩回顾




Python参数配置库ConfigParser详解


PyHubWeekly | 第二期:GitHub上优质的Python项目


Github上那些简单且值得推荐的Python小工具


实用工具 | 2款播放器让你免费听遍全网无损音乐



文章好看就点这里

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存